package condominio.negocio;



import condominio.dao.PersonaDAO;
import condominio.dao.ViviendaDAO;
import condominio.excepcion.DAOExcepcion;
import condominio.modelo.Persona;
import condominio.modelo.Residente;
import condominio.modelo.Vivienda;

public class condominioNegocio {
	public boolean login(Persona Admin) throws DAOExcepcion {
		boolean existe;
		PersonaDAO AdminDAO = new PersonaDAO();
		try {
			existe = AdminDAO.login(Admin);		

		} catch (DAOExcepcion e) {
			existe = false;
			throw e;
		}
		return existe;

	}
	
	public void registrarVivienda(int Idvivienda,double area, String tipo, String edificio, String zona, String nro, String propietario, String residente, String admin, String Estado)  throws DAOExcepcion {
		
		Vivienda vi = new Vivienda();
		
		vi.setIdvivenda(Idvivienda);
		vi.setArea(area);
		vi.setTipo(tipo);
		vi.setEdificio(edificio);
		vi.setZona(zona);
		vi.setNumero(nro);
		vi.setPropietario(propietario);
		vi.setResidente(residente);
		vi.setAdmin(admin);
		vi.setEstado(Estado);
		ViviendaDAO dao = new ViviendaDAO();
		try {
			dao.insertar(vi);
		} catch (DAOExcepcion e) {
			throw e;
		}		

	}
	
	
	
	public void BajaResidente(int idPersona)  throws DAOExcepcion {
		
		PersonaDAO dao = new PersonaDAO();
		try {
			dao.ActualizaEstado(idPersona);
		} catch (DAOExcepcion e) {
			throw e;
		}		

	}
	
public void InscribirResidente(String Idpersona, String nombres, String apellidos, String dni, String fechaNacimiento, String mail, String contrasena,String estado,String tipo )  throws DAOExcepcion {
		
		Residente re = new Residente();
		re.setIdpersona(Idpersona);
		re.setNombres(nombres);
		re.setApellidos(apellidos);
		re.setDni(dni);
		re.setFechaNacimiento(fechaNacimiento);
		re.setMail(mail);
		re.setContrasena(contrasena);
		re.setEstado(estado);
		re.setTipo(tipo);
		PersonaDAO dao = new PersonaDAO();
		try {
			dao.insertar(re);
		} catch (DAOExcepcion e) {
			throw e;
		}		

	}


public Persona obtenerPersona(int id)  throws DAOExcepcion {
	
	PersonaDAO dao = new PersonaDAO();
	Persona pe = new Persona();
	try {
		pe= dao.ObtenerPersona(id);
	} catch (DAOExcepcion e) {
		throw e;
	}		
	return pe;
}

public Vivienda obtenerVivienda(int id)  throws DAOExcepcion {
	
	ViviendaDAO dao = new ViviendaDAO();
	Vivienda vi = new Vivienda();
	try {
		vi= dao.ObtenerVivienda(id);
	} catch (DAOExcepcion e) {
		throw e;
	}		
	return vi;
}

}
